[INFO] cloning repository https://github.com/yoogoc/kaleidoscope-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yoogoc/kaleidoscope-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyoogoc%2Fkaleidoscope-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyoogoc%2Fkaleidoscope-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1e689fcac2f0c60f3943266b97704f26b460783d
[INFO] fixing yoogoc/kaleidoscope-rs against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyoogoc%2Fkaleidoscope-rs" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yoogoc/kaleidoscope-rs
[INFO] finished tweaking git repo https://github.com/yoogoc/kaleidoscope-rs
[INFO] tweaked toml for git repo https://github.com/yoogoc/kaleidoscope-rs written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yoogoc/kaleidoscope-rs on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yoogoc/kaleidoscope-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638
[INFO] running `Command { std: "docker" "start" "2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.148
[INFO] [stderr]    Compiling memchr v2.6.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.67
[INFO] [stderr]    Compiling regex-syntax v0.7.5
[INFO] [stderr]    Compiling semver v1.0.18
[INFO] [stderr]    Compiling rustix v0.38.13
[INFO] [stderr]    Compiling smallvec v1.11.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.7
[INFO] [stderr]    Compiling parking_lot_core v0.9.8
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling hashbrown v0.14.0
[INFO] [stderr]    Compiling bitflags v2.4.0
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling lock_api v0.4.10
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.4
[INFO] [stderr]    Compiling ena v0.14.2
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling diff v0.1.13
[INFO] [stderr]    Compiling thiserror v1.0.48
[INFO] [stderr]    Compiling pico-args v0.5.0
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling inkwell v0.2.0 (https://github.com/TheDan64/inkwell?branch=master#832c1d8a)
[INFO] [stderr]     Checking termcolor v1.3.0
[INFO] [stderr]    Compiling indexmap v2.0.0
[INFO] [stderr]    Compiling aho-corasick v1.1.0
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling term v0.7.0
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling petgraph v0.6.4
[INFO] [stderr]     Checking regex-automata v0.3.8
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling ascii-canvas v3.0.0
[INFO] [stderr]     Checking codespan v0.11.1
[INFO] [stderr]    Compiling syn v2.0.37
[INFO] [stderr]    Compiling string_cache v0.8.7
[INFO] [stderr]     Checking regex v1.9.5
[INFO] [stderr]     Checking lalrpop-util v0.20.0
[INFO] [stderr]    Compiling logos-codegen v0.13.0
[INFO] [stderr]    Compiling lalrpop v0.20.0
[INFO] [stderr]    Compiling llvm-sys v160.1.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.48
[INFO] [stderr]    Compiling inkwell_internals v0.8.0 (https://github.com/TheDan64/inkwell?branch=master#832c1d8a)
[INFO] [stderr]    Compiling logos-derive v0.13.0
[INFO] [stderr]     Checking logos v0.13.0
[INFO] [stderr]    Compiling kaleidoscope-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating build.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `kaleidoscope_rs`
[INFO] [stderr]  --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lexer.rs
[INFO] [stderr]  ::: /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs
[INFO] [stderr]  ::: src/lexer.rs
[INFO] [stderr]  ::: src/main.rs
[INFO] [stderr]  ::: src/tokens.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]             --> src/tokens.rs:3:16
[INFO] [stderr]              |
[INFO] [stderr]            3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stderr]              |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]             --> src/tokens.rs:4:3
[INFO] [stderr]              |
[INFO] [stderr]            4 | #[logos(skip r"[ \t\n\f]+")]
[INFO] [stderr]              |   ^^^^^
[INFO] [stderr]              |
[INFO] [stderr]              = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]              |
[INFO] [stderr]            5 + #[derive(Logos)]
[INFO] [stderr]            6 | pub enum Token<'input> {
[INFO] [stderr]              |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]             --> src/tokens.rs:6:7
[INFO] [stderr]              |
[INFO] [stderr]            6 |     #[regex("[_a-zA-Z][_0-9a-zA-Z]*", |lex| lex.slice())]
[INFO] [stderr]              |       ^^^^^
[INFO] [stderr]              |
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]   --> src/main.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ( $( $x:expr ),* ) => {
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout]    = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ( $( $x:expr_2021 ),* ) => {
[INFO] [stdout]    |                 +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stdout] warning: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:34:3
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-attributes.html>
[INFO] [stdout]    = note: `--force-warn unsafe-attr-outside-unsafe` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              |
[INFO] [stdout] warning: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:40:3
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-attributes.html>
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            5 + #[derive(Logos)]
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, &'s str, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            6 | pub enum Token<'input> {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]             --> src/tokens.rs:8:7
[INFO] [stderr]              |
[INFO] [stderr]            8 |     #[regex("[-]?[0-9]*[.]?[0-9]+(?:[eE][+-]?[0-9]+)?", |lex| lex.slice().parse().ok())]
[INFO] [stderr]              |       ^^^^^
[INFO] [stderr]              |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]              |
[INFO] [stderr]            5 + #[derive(Logos)]
[INFO] [stderr]            6 | pub enum Token<'input> {
[INFO] [stderr]              |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:10:7
[INFO] [stderr]               |
[INFO] [stderr]            10 |     #[token("def")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:12:7
[INFO] [stderr]               |
[INFO] [stderr]            12 |     #[token("extern")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:14:7
[INFO] [stderr]               |
[INFO] [stderr]            14 |     #[token("if")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:16:7
[INFO] [stderr]               |
[INFO] [stderr]            16 |     #[token("then")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:18:7
[INFO] [stderr]               |
[INFO] [stderr]            18 |     #[token("else")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:20:7
[INFO] [stderr]               |
[INFO] [stderr]            20 |     #[token("for")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:22:7
[INFO] [stderr]               |
[INFO] [stderr]            22 |     #[token("in")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:24:7
[INFO] [stderr]               |
[INFO] [stderr]            24 |     #[token("end")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:26:7
[INFO] [stderr]               |
[INFO] [stderr]            26 |     #[token("(")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:28:7
[INFO] [stderr]               |
[INFO] [stderr]            28 |     #[token(")")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:30:7
[INFO] [stderr]               |
[INFO] [stderr]            30 |     #[token(",")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:32:7
[INFO] [stderr]               |
[INFO] [stderr]            32 |     #[token(";")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:34:7
[INFO] [stderr]               |
[INFO] [stderr]            34 |     #[token("=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:36:7
[INFO] [stderr]               |
[INFO] [stderr]            36 |     #[token("+")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:38:7
[INFO] [stderr]               |
[INFO] [stderr]            38 |     #[token("-")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:40:7
[INFO] [stderr]               |
[INFO] [stderr]            40 |     #[token("*")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:42:7
[INFO] [stderr]               |
[INFO] [stderr]            42 |     #[token("/")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:44:7
[INFO] [stderr]               |
[INFO] [stderr]            44 |     #[token("%")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:46:7
[INFO] [stderr]               |
[INFO] [stderr]            46 |     #[token("~")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:48:7
[INFO] [stderr]               |
[INFO] [stderr]            48 |     #[token(">")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:50:7
[INFO] [stderr]               |
[INFO] [stderr]            50 |     #[token("<")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:52:7
[INFO] [stderr]               |
[INFO] [stderr]            52 |     #[token(">=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:54:7
[INFO] [stderr]               |
[INFO] [stderr]            54 |     #[token("<=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:56:7
[INFO] [stderr]               |
[INFO] [stderr]            56 |     #[token("==")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:10:1
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lexer.rs:15:5
[INFO] [stderr]               |
[INFO] [stderr]            15 |     source: &'source Token::Source,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:15:14
[INFO] [stderr]               |
[INFO] [stderr]            15 | impl<'input> Lexer<'input> {
[INFO] [stderr]               |              ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:27:5
[INFO] [stderr]               |
[INFO] [stderr]            27 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied in `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:24:27
[INFO] [stderr]               |
[INFO] [stderr]            24 | impl<'input> Iterator for Lexer<'input> {
[INFO] [stderr]               |                           ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'input>`, the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]            note: required by a bound in `Iterator`
[INFO] [stderr]              --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/iter/traits/iterator.rs:42:0
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'input>` doesn't implement `Debug`
[INFO] [stderr]               --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:486:22
[INFO] [stderr]                |
[INFO] [stderr]            486 |         type Token = Token<'input>;
[INFO] [stderr]                |                      ^^^^^^^^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:25
[INFO] [stderr]                |
[INFO] [stderr]             27 |     type Token: Clone + Debug;
[INFO] [stderr]                |                         ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/tokens.rs:5:1
[INFO] [stderr]                |
[INFO] [stderr]              5 + #[derive(Debug)]
[INFO] [stderr]              6 | pub enum Token<'input> {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Clone` is not satisfied
[INFO] [stderr]               --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:486:22
[INFO] [stderr]                |
[INFO] [stderr]            486 |         type Token = Token<'input>;
[INFO] [stderr]                |                      ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:17
[INFO] [stderr]                |
[INFO] [stderr]             27 |     type Token: Clone + Debug;
[INFO] [stderr]                |                 ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Clone)]`
[INFO] [stderr]               --> src/tokens.rs:5:1
[INFO] [stderr]                |
[INFO] [stderr]              5 + #[derive(Clone)]
[INFO] [stderr]              6 | pub enum Token<'input> {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'input>` doesn't implement `Debug`
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:3626:22
[INFO] [stderr]                 |
[INFO] [stderr]            3626 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:25
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                         ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Debug)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Debug)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Clone` is not satisfied
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:3626:22
[INFO] [stderr]                 |
[INFO] [stderr]            3626 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:17
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                 ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Clone)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Clone)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'input>` doesn't implement `Debug`
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:6749:22
[INFO] [stderr]                 |
[INFO] [stderr]            6749 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:25
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                         ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Debug)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Debug)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Clone` is not satisfied
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:6749:22
[INFO] [stderr]                 |
[INFO] [stderr]            6749 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:17
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                 ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Clone)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Clone)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:16:39
[INFO] [stderr]               |
[INFO] [stderr]            16 |     pub fn new(input: &'input str) -> Self {
[INFO] [stderr]               |                                       ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:27:13
[INFO] [stderr]               |
[INFO] [stderr]            27 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]               |             ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:18:9
[INFO] [stderr]               |
[INFO] [stderr]            18 |         Self {
[INFO] [stderr]               |         ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `tokens::Token<'input>` in the current scope
[INFO] [stderr]              --> src/lexer.rs:19:34
[INFO] [stderr]               |
[INFO] [stderr]            19 |             token_stream: Token::lexer(input).spanned(),
[INFO] [stderr]               |                                  ^^^^^ variant, associated function, or constant not found in `tokens::Token<'_>`
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ---------------------- variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]               |
[INFO] [stderr]               = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]               = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                       candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied in `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:18:9
[INFO] [stderr]               |
[INFO] [stderr]            18 | /         Self {
[INFO] [stderr]            19 | |             token_stream: Token::lexer(input).spanned(),
[INFO] [stderr]            20 | |         }
[INFO] [stderr]               | |_________^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'input>`, the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]               = note: structs must have a statically known size to be initialized
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `SpannedIter<'input, tokens::Token<'input>>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer.rs:28:27
[INFO] [stderr]                |
[INFO] [stderr]             28 |         self.token_stream.next().map(|(token, span)| match token {
[INFO] [stderr]                |                           ^^^^ method cannot be called on `SpannedIter<'input, tokens::Token<'input>>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/tokens.rs:5:1
[INFO] [stderr]                |
[INFO] [stderr]              5 | pub enum Token<'input> {
[INFO] [stderr]                | ---------------------- doesn't satisfy `tokens::Token<'input>: Logos<'_>`
[INFO] [stderr]                |
[INFO] [stderr]               ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lexer.rs:226:1
[INFO] [stderr]                |
[INFO] [stderr]            226 | pub struct SpannedIter<'source, Token: Logos<'source>> {
[INFO] [stderr]                | ------------------------------------------------------ doesn't satisfy `_: Iterator`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `tokens::Token<'input>: Logos<'_>`
[INFO] [stderr]                        which is required by `SpannedIter<'input, tokens::Token<'input>>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lib.rs:185:1
[INFO] [stderr]                |
[INFO] [stderr]            185 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:88:17
[INFO] [stderr]               |
[INFO] [stderr]            88 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:88:17
[INFO] [stderr]               |
[INFO] [stderr]            88 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied in `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/main.rs:88:9
[INFO] [stderr]               |
[INFO] [stderr]            88 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |         ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'_>`, the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]               = note: all local variables must have a statically known size
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied in `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/main.rs:91:16
[INFO] [stderr]               |
[INFO] [stderr]            91 |     for ele in lexer {
[INFO] [stderr]               |                ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'_>`, the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'_>` doesn't implement `Debug`
[INFO] [stderr]              --> src/main.rs:92:26
[INFO] [stderr]               |
[INFO] [stderr]            92 |         println!("{:?}", ele);
[INFO] [stderr]               |                   ----   ^^^ `tokens::Token<'_>` cannot be formatted using `{:?}` because it doesn't implement `Debug`
[INFO] [stderr]               |                   |
[INFO] [stderr]               |                   required by this formatting parameter
[INFO] [stderr]               |
[INFO] [stderr]               = help: the trait `Debug` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]            help: the trait `Debug` is implemented for `Result<T, E>`
[INFO] [stderr]              --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/result.rs:552:15
[INFO] [stderr]               = note: required for `(ByteIndex, tokens::Token<'_>, ByteIndex)` to implement `Debug`
[INFO] [stderr]               = note: 1 redundant requirement hidden
[INFO] [stderr]               = note: required for `Result<(ByteIndex, Token<'_>, ByteIndex), ParseError<..., ..., ...>>` to implement `Debug`
[INFO] [stderr]               = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/kaleidoscope_rs-d60c5daff447dc9d.long-type-54334380086452367.txt'
[INFO] [stderr]               = note: consider using `--verbose` to print the full type name to the console
[INFO] [stderr]            help: consider annotating `tokens::Token<'_>` with `#[derive(Debug)]`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Debug)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:95:17
[INFO] [stderr]               |
[INFO] [stderr]            95 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:95:17
[INFO] [stderr]               |
[INFO] [stderr]            95 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied in `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/main.rs:95:9
[INFO] [stderr]               |
[INFO] [stderr]            95 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |         ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'_>`, the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]               = note: all local variables must have a statically known size
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'_>` doesn't implement `Debug`
[INFO] [stderr]              --> src/main.rs:99:38
[INFO] [stderr]               |
[INFO] [stderr]            99 |     let result = parser.parse(lexer).unwrap();
[INFO] [stderr]               |                                      ^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Debug` is implemented for `ParseError<L, T, E>`
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/lib.rs:14:17
[INFO] [stderr]               |
[INFO] [stderr]            14 | #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stderr]               |                 ^^^^^
[INFO] [stderr]               = note: required for `ParseError<ByteIndex, tokens::Token<'_>, ParseError<ByteIndex, tokens::Token<'_>, Void>>` to implement `Debug`
[INFO] [stderr]            note: required by a bound in `Result::<T, E>::unwrap`
[INFO] [stderr]              --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/result.rs:1225:4
[INFO] [stderr]            help: consider annotating `tokens::Token<'_>` with `#[derive(Debug)]`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Debug)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 54 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0277, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr] error: errors present after applying fixes to crate `kaleidoscope_rs`
[INFO] [stderr]  --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lexer.rs
[INFO] [stderr]  ::: /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs
[INFO] [stderr]  ::: src/lexer.rs
[INFO] [stderr]  ::: src/main.rs
[INFO] [stderr]  ::: src/tokens.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]             --> src/tokens.rs:3:16
[INFO] [stderr]              |
[INFO] [stderr]            3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stderr]              |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]             --> src/tokens.rs:4:3
[INFO] [stderr]              |
[INFO] [stderr]            4 | #[logos(skip r"[ \t\n\f]+")]
[INFO] [stderr]              |   ^^^^^
[INFO] [stderr]              |
[INFO] [stderr]              = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]              |
[INFO] [stderr]            5 + #[derive(Logos)]
[INFO] [stderr]            6 | pub enum Token<'input> {
[INFO] [stderr]              |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]   --> src/main.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ( $( $x:expr ),* ) => {
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout]    = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]    |
[INFO] [stdout] 27 |     ( $( $x:expr_2021 ),* ) => {
[INFO] [stdout]    |                 +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]             --> src/tokens.rs:6:7
[INFO] [stderr]              |
[INFO] [stderr]            6 |     #[regex("[_a-zA-Z][_0-9a-zA-Z]*", |lex| lex.slice())]
[INFO] [stderr]              |       ^^^^^
[INFO] [stderr]              |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]              |
[INFO] [stderr]            5 + #[derive(Logos)]
[INFO] [stderr]            6 | pub enum Token<'input> {
[INFO] [stderr]              |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]             --> src/tokens.rs:8:7
[INFO] [stderr]              |
[INFO] [stderr]            8 |     #[regex("[-]?[0-9]*[.]?[0-9]+(?:[eE][+-]?[0-9]+)?", |lex| lex.slice().parse().ok())]
[INFO] [stderr]              |       ^^^^^
[INFO] [stderr]              |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]              |
[INFO] [stderr]            5 + #[derive(Logos)]
[INFO] [stderr]            6 | pub enum Token<'input> {
[INFO] [stderr]              |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:10:7
[INFO] [stderr]               |
[INFO] [stderr]            10 |     #[token("def")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:12:7
[INFO] [stderr]               |
[INFO] [stderr]            12 |     #[token("extern")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:14:7
[INFO] [stderr]               |
[INFO] [stderr]            14 |     #[token("if")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:16:7
[INFO] [stderr]               |
[INFO] [stderr]            16 |     #[token("then")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:18:7
[INFO] [stderr]               |
[INFO] [stderr]            18 |     #[token("else")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:20:7
[INFO] [stderr]               |
[INFO] [stderr]            20 |     #[token("for")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:22:7
[INFO] [stderr]               |
[INFO] [stderr]            22 |     #[token("in")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:24:7
[INFO] [stderr]               |
[INFO] [stderr]            24 |     #[token("end")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:26:7
[INFO] [stderr]               |
[INFO] [stderr]            26 |     #[token("(")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:28:7
[INFO] [stderr]               |
[INFO] [stderr]            28 |     #[token(")")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:30:7
[INFO] [stderr]               |
[INFO] [stderr]            30 |     #[token(",")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:32:7
[INFO] [stderr]               |
[INFO] [stderr]            32 |     #[token(";")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:34:7
[INFO] [stderr]               |
[INFO] [stderr]            34 |     #[token("=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:36:7
[INFO] [stderr]               |
[INFO] [stderr]            36 |     #[token("+")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:38:7
[INFO] [stderr]               |
[INFO] [stderr]            38 |     #[token("-")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:40:7
[INFO] [stderr]               |
[INFO] [stderr]            40 |     #[token("*")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:42:7
[INFO] [stderr]               |
[INFO] [stderr]            42 |     #[token("/")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:44:7
[INFO] [stderr]               |
[INFO] [stderr]            44 |     #[token("%")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:46:7
[INFO] [stderr]               |
[INFO] [stderr]            46 |     #[token("~")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:48:7
[INFO] [stderr]               |
[INFO] [stderr]            48 |     #[token(">")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:50:7
[INFO] [stderr]               |
[INFO] [stderr]            50 |     #[token("<")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:52:7
[INFO] [stderr]               |
[INFO] [stderr]            52 |     #[token(">=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:54:7
[INFO] [stderr]               |
[INFO] [stderr]            54 |     #[token("<=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/tokens.rs:56:7
[INFO] [stderr]               |
[INFO] [stderr]            56 |     #[token("==")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Logos)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:10:1
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lexer.rs:15:5
[INFO] [stderr]               |
[INFO] [stderr]            15 |     source: &'source Token::Source,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:15:14
[INFO] [stderr]               |
[INFO] [stderr]            15 | impl<'input> Lexer<'input> {
[INFO] [stderr]               |              ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:27:5
[INFO] [stderr]               |
[INFO] [stderr]            27 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied in `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:24:27
[INFO] [stderr]               |
[INFO] [stderr]            24 | impl<'input> Iterator for Lexer<'input> {
[INFO] [stderr]               |                           ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'input>`, the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]            note: required by a bound in `Iterator`
[INFO] [stderr]              --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/iter/traits/iterator.rs:42:0
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'input>` doesn't implement `Debug`
[INFO] [stderr]               --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:486:22
[INFO] [stderr]                |
[INFO] [stderr]            486 |         type Token = Token<'input>;
[INFO] [stderr]                |                      ^^^^^^^^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:25
[INFO] [stderr]                |
[INFO] [stderr]             27 |     type Token: Clone + Debug;
[INFO] [stderr]                |                         ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Debug)]`
[INFO] [stderr]               --> src/tokens.rs:5:1
[INFO] [stderr]                |
[INFO] [stderr]              5 + #[derive(Debug)]
[INFO] [stderr]              6 | pub enum Token<'input> {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Clone` is not satisfied
[INFO] [stderr]               --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:486:22
[INFO] [stderr]                |
[INFO] [stderr]            486 |         type Token = Token<'input>;
[INFO] [stderr]                |                      ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:17
[INFO] [stderr]                |
[INFO] [stderr]             27 |     type Token: Clone + Debug;
[INFO] [stderr]                |                 ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Clone)]`
[INFO] [stderr]               --> src/tokens.rs:5:1
[INFO] [stderr]                |
[INFO] [stderr]              5 + #[derive(Clone)]
[INFO] [stderr]              6 | pub enum Token<'input> {
[INFO] [stderr]                |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'input>` doesn't implement `Debug`
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:3626:22
[INFO] [stderr]                 |
[INFO] [stderr]            3626 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:25
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                         ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Debug)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Debug)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Clone` is not satisfied
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:3626:22
[INFO] [stderr]                 |
[INFO] [stderr]            3626 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:17
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                 ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Clone)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Clone)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'input>` doesn't implement `Debug`
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:6749:22
[INFO] [stderr]                 |
[INFO] [stderr]            6749 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:25
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                         ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Debug)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Debug)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Clone` is not satisfied
[INFO] [stderr]                --> /opt/rustwide/target/debug/build/kaleidoscope-rs-218c35261f29cfa8/out/kaleidoscope.rs:6749:22
[INFO] [stderr]                 |
[INFO] [stderr]            6749 |         type Token = Token<'input>;
[INFO] [stderr]                 |                      ^^^^^^^^^^^^^ the trait `Clone` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]                 |
[INFO] [stderr]            note: required by a bound in `lalrpop_util::state_machine::ParserDefinition::Token`
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/state_machine.rs:27:17
[INFO] [stderr]                 |
[INFO] [stderr]              27 |     type Token: Clone + Debug;
[INFO] [stderr]                 |                 ^^^^^ required by this bound in `ParserDefinition::Token`
[INFO] [stderr]            help: consider annotating `tokens::Token<'input>` with `#[derive(Clone)]`
[INFO] [stderr]                -->  src/tokens.rs:5:1
[INFO] [stderr]                 |
[INFO] [stderr]               5 + #[derive(Clone)]
[INFO] [stderr]               6 | pub enum Token<'input> {
[INFO] [stderr]                 |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:16:39
[INFO] [stderr]               |
[INFO] [stderr]            16 |     pub fn new(input: &'input str) -> Self {
[INFO] [stderr]               |                                       ^^^^ unsatisfied trait bound
[INFO] [stdout] warning: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:34:3
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-attributes.html>
[INFO] [stdout]    = note: `--force-warn unsafe-attr-outside-unsafe` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:40:3
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-attributes.html>
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, &'s str, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, tokens::Token<'s>>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/tokens.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Logos + use<'s>, Copy, Clone, Debug, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:27:13
[INFO] [stderr]               |
[INFO] [stderr]            27 |     fn next(&mut self) -> Option<Self::Item> {
[INFO] [stderr]               |             ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied
[INFO] [stderr]              --> src/lexer.rs:18:9
[INFO] [stderr]               |
[INFO] [stderr]            18 |         Self {
[INFO] [stderr]               |         ^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `tokens::Token<'input>` in the current scope
[INFO] [stderr]              --> src/lexer.rs:19:34
[INFO] [stderr]               |
[INFO] [stderr]            19 |             token_stream: Token::lexer(input).spanned(),
[INFO] [stderr]               |                                  ^^^^^ variant, associated function, or constant not found in `tokens::Token<'_>`
[INFO] [stderr]               |
[INFO] [stderr]              ::: src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ---------------------- variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]               |
[INFO] [stderr]               = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]               = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                       candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'input>: Logos<'input>` is not satisfied in `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:18:9
[INFO] [stderr]               |
[INFO] [stderr]            18 | /         Self {
[INFO] [stderr]            19 | |             token_stream: Token::lexer(input).spanned(),
[INFO] [stderr]            20 | |         }
[INFO] [stderr]               | |_________^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'input>`, the trait `Logos<'input>` is not implemented for `tokens::Token<'input>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'input>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]               = note: structs must have a statically known size to be initialized
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `SpannedIter<'input, tokens::Token<'input>>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/lexer.rs:28:27
[INFO] [stderr]                |
[INFO] [stderr]             28 |         self.token_stream.next().map(|(token, span)| match token {
[INFO] [stderr]                |                           ^^^^ method cannot be called on `SpannedIter<'input, tokens::Token<'input>>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: src/tokens.rs:5:1
[INFO] [stderr]                |
[INFO] [stderr]              5 | pub enum Token<'input> {
[INFO] [stderr]                | ---------------------- doesn't satisfy `tokens::Token<'input>: Logos<'_>`
[INFO] [stderr]                |
[INFO] [stderr]               ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lexer.rs:226:1
[INFO] [stderr]                |
[INFO] [stderr]            226 | pub struct SpannedIter<'source, Token: Logos<'source>> {
[INFO] [stderr]                | ------------------------------------------------------ doesn't satisfy `_: Iterator`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `tokens::Token<'input>: Logos<'_>`
[INFO] [stderr]                        which is required by `SpannedIter<'input, tokens::Token<'input>>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.13.0/src/lib.rs:185:1
[INFO] [stderr]                |
[INFO] [stderr]            185 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:88:17
[INFO] [stderr]               |
[INFO] [stderr]            88 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:88:17
[INFO] [stderr]               |
[INFO] [stderr]            88 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied in `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/main.rs:88:9
[INFO] [stderr]               |
[INFO] [stderr]            88 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |         ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'_>`, the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]               = note: all local variables must have a statically known size
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied in `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/main.rs:91:16
[INFO] [stderr]               |
[INFO] [stderr]            91 |     for ele in lexer {
[INFO] [stderr]               |                ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'_>`, the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'_>` doesn't implement `Debug`
[INFO] [stderr]              --> src/main.rs:92:26
[INFO] [stderr]               |
[INFO] [stderr]            92 |         println!("{:?}", ele);
[INFO] [stderr]               |                   ----   ^^^ `tokens::Token<'_>` cannot be formatted using `{:?}` because it doesn't implement `Debug`
[INFO] [stderr]               |                   |
[INFO] [stderr]               |                   required by this formatting parameter
[INFO] [stderr]               |
[INFO] [stderr]               = help: the trait `Debug` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]            help: the trait `Debug` is implemented for `Result<T, E>`
[INFO] [stderr]              --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/result.rs:552:15
[INFO] [stderr]               = note: required for `(ByteIndex, tokens::Token<'_>, ByteIndex)` to implement `Debug`
[INFO] [stderr]               = note: 1 redundant requirement hidden
[INFO] [stderr]               = note: required for `Result<(ByteIndex, Token<'_>, ByteIndex), ParseError<..., ..., ...>>` to implement `Debug`
[INFO] [stderr]               = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/kaleidoscope_rs-bb8f9ce6674ef167.long-type-10004351954995721440.txt'
[INFO] [stderr]               = note: consider using `--verbose` to print the full type name to the console
[INFO] [stderr]            help: consider annotating `tokens::Token<'_>` with `#[derive(Debug)]`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Debug)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:95:17
[INFO] [stderr]               |
[INFO] [stderr]            95 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/main.rs:95:17
[INFO] [stderr]               |
[INFO] [stderr]            95 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |                 ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `tokens::Token<'_>: Logos<'_>` is not satisfied in `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/main.rs:95:9
[INFO] [stderr]               |
[INFO] [stderr]            95 |     let lexer = Lexer::new(input);
[INFO] [stderr]               |         ^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: within `lexer::Lexer<'_>`, the trait `Logos<'_>` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 | pub enum Token<'input> {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: required because it appears within the type `lexer::Lexer<'_>`
[INFO] [stderr]              --> src/lexer.rs:10:12
[INFO] [stderr]               |
[INFO] [stderr]            10 | pub struct Lexer<'input> {
[INFO] [stderr]               |            ^^^^^
[INFO] [stderr]               = note: all local variables must have a statically known size
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: `tokens::Token<'_>` doesn't implement `Debug`
[INFO] [stderr]              --> src/main.rs:99:38
[INFO] [stderr]               |
[INFO] [stderr]            99 |     let result = parser.parse(lexer).unwrap();
[INFO] [stderr]               |                                      ^^^^^^ the trait `Debug` is not implemented for `tokens::Token<'_>`
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Debug` is implemented for `ParseError<L, T, E>`
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lalrpop-util-0.20.0/src/lib.rs:14:17
[INFO] [stderr]               |
[INFO] [stderr]            14 | #[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stderr]               |                 ^^^^^
[INFO] [stderr]               = note: required for `ParseError<ByteIndex, tokens::Token<'_>, ParseError<ByteIndex, tokens::Token<'_>, Void>>` to implement `Debug`
[INFO] [stderr]            note: required by a bound in `Result::<T, E>::unwrap`
[INFO] [stderr]              --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/result.rs:1225:4
[INFO] [stderr]            help: consider annotating `tokens::Token<'_>` with `#[derive(Debug)]`
[INFO] [stderr]              --> src/tokens.rs:5:1
[INFO] [stderr]               |
[INFO] [stderr]             5 + #[derive(Debug)]
[INFO] [stderr]             6 | pub enum Token<'input> {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 54 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0277, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.91s
[INFO] [stderr] crater-edition-check: kaleidoscope-rs v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]    Compiling kaleidoscope-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:34:3
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:40:3
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:34:3
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 34 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unsafe attribute used without unsafe
[INFO] [stdout]   --> src/main.rs:40:3
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[no_mangle]
[INFO] [stdout]    |   ^^^^^^^^^ usage of unsafe attribute
[INFO] [stdout]    |
[INFO] [stdout] help: wrap the attribute in `unsafe(...)`
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[unsafe(no_mangle)]
[INFO] [stdout]    |   +++++++         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kaleidoscope-rs` (bin "kaleidoscope-rs") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `kaleidoscope-rs` (bin "kaleidoscope-rs" test) due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638", kill_on_drop: false }`
[INFO] [stdout] 2670e41d1d54b686d381bba1e3e3d0bc77d4437732d0562f88fa83876be39638
